package com.chinatechstar.base.entity;

import com.chinatechstar.component.commons.entity.CreateEntity;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

import java.util.Date;

/**
 * 基础数据-生产单位(sys_prod_org)
 *
 * @author Rei
 * @version 1.0.0 2020-09-17
 */
public class SysProdOrg extends CreateEntity implements java.io.Serializable {
    /**
     * 版本号
     */
    private static final long serialVersionUID = 4213576505845684659L;

    /* This code was generated by TableGo tools, mark 1 begin. */

    /**
     * 生产单位主键ID
     */
    private Long id;

    /**
     * 机构ID（A2）
     */
    private String prodOrgId;

    /**
     * 生产单位名称（A2）
     */
    private String prodOrgName;

    /**
     * 代码（A2）
     */
    private String prodOrgCode;

    /**
     * 级别（A2）
     */
    private Integer prodOrgLevel;

    /**
     * 父ID（A2）
     */
    private String prodParentId;

    /**
     * 撤销日期（A2）
     */
    private Date prodCancelDate;

    /**
     * 撤销原因（A2）
     */
    private String prodCancelReason;

    /**
     * 排序顺序，用于展示
     */
    private Integer displayOrder;

    /**
     * 租户编码
     */
    private String tenantCode;

    /**
     * 软删除（1-未删除；0-删除）
     */
    private Integer softDelete;

    /* This code was generated by TableGo tools, mark 1 end. */

    /* This code was generated by TableGo tools, mark 2 begin. */

    /**
     * 获取生产单位主键ID
     *
     * @return 生产单位主键ID
     */
    public Long getId() {
        return this.id;
    }

    /**
     * 设置生产单位主键ID
     *
     * @param id 生产单位主键ID
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取机构ID（A2）
     *
     * @return 机构ID（A2）
     */
    public String getProdOrgId() {
        return this.prodOrgId;
    }

    /**
     * 设置机构ID（A2）
     *
     * @param prodOrgId 机构ID（A2）
     */
    public void setProdOrgId(String prodOrgId) {
        this.prodOrgId = prodOrgId;
    }

    /**
     * 获取生产单位名称（A2）
     *
     * @return 生产单位名称（A2）
     */
    public String getProdOrgName() {
        return this.prodOrgName;
    }

    /**
     * 设置生产单位名称（A2）
     *
     * @param prodOrgName 生产单位名称（A2）
     */
    public void setProdOrgName(String prodOrgName) {
        this.prodOrgName = prodOrgName;
    }

    /**
     * 获取代码（A2）
     *
     * @return 代码（A2）
     */
    public String getProdOrgCode() {
        return this.prodOrgCode;
    }

    /**
     * 设置代码（A2）
     *
     * @param prodOrgCode 代码（A2）
     */
    public void setProdOrgCode(String prodOrgCode) {
        this.prodOrgCode = prodOrgCode;
    }

    /**
     * 获取级别（A2）
     *
     * @return 级别（A2）
     */
    public Integer getProdOrgLevel() {
        return this.prodOrgLevel;
    }

    /**
     * 设置级别（A2）
     *
     * @param prodOrgLevel 级别（A2）
     */
    public void setProdOrgLevel(Integer prodOrgLevel) {
        this.prodOrgLevel = prodOrgLevel;
    }

    /**
     * 获取父ID（A2）
     *
     * @return 父ID（A2）
     */
    public String getProdParentId() {
        return this.prodParentId;
    }

    /**
     * 设置父ID（A2）
     *
     * @param prodParentId 父ID（A2）
     */
    public void setProdParentId(String prodParentId) {
        this.prodParentId = prodParentId;
    }

    /**
     * 获取撤销日期（A2）
     *
     * @return 撤销日期（A2）
     */
    public Date getProdCancelDate() {
        return this.prodCancelDate;
    }

    /**
     * 设置撤销日期（A2）
     *
     * @param prodCancelDate 撤销日期（A2）
     */
    public void setProdCancelDate(Date prodCancelDate) {
        this.prodCancelDate = prodCancelDate;
    }

    /**
     * 获取撤销原因（A2）
     *
     * @return 撤销原因（A2）
     */
    public String getProdCancelReason() {
        return this.prodCancelReason;
    }

    /**
     * 设置撤销原因（A2）
     *
     * @param prodCancelReason 撤销原因（A2）
     */
    public void setProdCancelReason(String prodCancelReason) {
        this.prodCancelReason = prodCancelReason;
    }

    /**
     * 获取排序顺序，用于展示
     *
     * @return 排序顺序
     */
    public Integer getDisplayOrder() {
        return this.displayOrder;
    }

    /**
     * 设置排序顺序，用于展示
     *
     * @param displayOrder 排序顺序
     */
    public void setDisplayOrder(Integer displayOrder) {
        this.displayOrder = displayOrder;
    }

    /**
     * 获取租户编码
     *
     * @return 租户编码
     */
    public String getTenantCode() {
        return this.tenantCode;
    }

    /**
     * 设置租户编码
     *
     * @param tenantCode 租户编码
     */
    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    /**
     * 获取软删除（1-未删除；0-删除）
     *
     * @return 软删除（1-未删除；0-删除）
     */
    public Integer getSoftDelete() {
        return this.softDelete;
    }

    /**
     * 设置软删除（1-未删除；0-删除）
     *
     * @param softDelete 软删除（1-未删除；0-删除）
     */
    public void setSoftDelete(Integer softDelete) {
        this.softDelete = softDelete;
    }

    /* This code was generated by TableGo tools, mark 2 end. */

    /* This code was generated by TableGo tools, mark 3 begin. */

    @Override
    public boolean equals(Object obj) {
        return EqualsBuilder.reflectionEquals(obj, this);
    }

    @Override
    public int hashCode() {
        return HashCodeBuilder.reflectionHashCode(this);
    }

    @Override
    public String toString() {
        return ReflectionToStringBuilder.toString(this);
    }

    /* This code was generated by TableGo tools, mark 3 end. */
}